<?php


namespace app\lmsx\admin;

use app\common\builder\ZBuilder;
use app\lmsx\model\Comment as CommentModel;
use think\Db;

/**
 * 文章评论
 * @author lan
 */
class Comment extends Base
{
    public function index(){
        // 获取查询和排序规则
        $map = $this->getMap();
        $order = $this->getOrder();
        $data = Db::view('lmsx_comment')
            ->view('lmsx_user','nickname','lmsx_user.openid=lmsx_comment.openid')
            ->view('lmsx_article','title','lmsx_article.id=lmsx_comment.article_id')
            ->where($map)
            ->order($order)
            ->order('id desc')
            ->paginate()->each(function($item){
                // 对分页数据可以做额外处理
                return $item;
            });
        //dump($data);die;
        return ZBuilder::make('table')
            ->setTableName('lmsx_comment')  //需要修改 这里修改正确可以直接修改字段 删除
            ->addColumns([
                ['id','id'],
                ['nickname','评论用户'],
                ['title','评论文章'],
                ['content','评论内容'],
                ['create_time','创建时间','datetime'],
                ['right_button', '操作', 'btn']
            ])
           // ->addTopButton('add', [],[])
           // ->addRightButton('edit',[],[])
            ->addTopButtons(['delete'])
            ->addRightButton('detail', ['icon' => 'fa fa-fw fa-eye', 'title' => '查看详情', 'href' => url('detail', ['id' => '__id__'])])
            ->setRowList($data)
            ->addTimeFilter('lmsx_comment.create_time')
            ->addFilter(['nickname'=>'lmsx_user','title'=>'lmsx_article'])
           // ->setSearch(['id' => 'ID', 'title' => '标题'])
            ->fetch();
    }
//    public function add(){
//        if($this->request->isPost()){
//            // 第一步 获取数据 如果后台面向大众 需要用only方法
//            $data = request()->post();
//            // 第二部 验证数据
//            $result = $this->validate($data,'Category');
//            if($result!==true) $this->error($result);
//            // 第三部 存储
//            CategoryModel::create($data);
//            $this->success('保存成功', null, '_parent_reload');
//        }
//        return ZBuilder::make('form')
//            ->addFormItems([
//                ['text', 'cat_name', '分类名称'],
//                ['text', 'sort', '排序'],
//                ['radio','status','是否显示',['否','是'],1]
//            ])
//            ->fetch();
//    }
//    public function edit($id=null){
//        if($this->request->isPost()){
//            $data = request()->post();
//            $result = $this->validate($data,'Category');
//            if($result!==true) $this->error($result);
//            CommentModel::update($data);
//            $this->success('保存成功', null, '_parent_reload');
//        }
//        $data = CommentModel::get($id);
//        return ZBuilder::make('form')
//            ->addFormItems([
//                ['hidden','id'],
//                ['text', 'cat_name', '分类名称'],
//                ['text', 'sort', '排序'],
//                ['radio','status','是否显示',['否','是']]
//            ])
//            ->setFormData($data)
//            ->fetch();
//    }

    /**
     * 查看详情
     */
    public function detail($id=null){
        if (empty($id)) $this->error('参数错误');
        $info=Db::table('dp_lmsx_comment')->where('id',$id)->find();
        // 使用ZBuilder快速创建表单
        return ZBuilder::make('form')
            ->setPageTitle('编辑') // 设置页面标题
            ->addFormItems([ // 批量添加表单项
                ['hidden', 'id'],
               // ['static', 'title', '标题'],
                ['textarea', 'content', '评论内容'],
            ])
            ->hideBtn('submit')
            ->setFormData($info) // 设置表单数据
            ->fetch();
    }
}